Protocol Buffers
圧縮されたデータをデシリアライズして戻す
元々社内で利用されていたが2008年にOSS化された
マイクロサービスの流れ的に、こっちではこの言語、こっちではこの言語としたものを連携しやすい その通信間でシリアライズ、デシリアライズを行う
特徴
静的な構造化データが対象
元のデータ構造を変更せずに拡張可能
バイナリ形式
言語に依存しない
データアクセスコードを自動生成
利用する流れ
1. protoファイルを記述
拡張子は.proto
2. protocでコンパイルしコードの自動生成を行う
3. 自動生成されたコードを用いてプログラミング
フィールドルール
required
optional
repeated
フィールドの型
double
float
int32
uint64
sint32
fixed64
sfixed32
bool
string
bytres
etc.
同様の技術
利用例
プログラミング言語内のデータ構造をファイルに保存するとき
RPCでデータをやり取りするとき
PokemonGoで使われている
参考